package puzzlegame.useless;

import java.util.Random;

public class llll {
    public static void main(String[] args) {
        //定义一维数组
        int[] tempArr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
        //打乱数组顺序，并遍历数组获得每一个元素，并进行交换
        Random r=new Random();
        for (int i = 0; i < tempArr.length; i++) {
            //获得随机索引
            int index=r.nextInt(tempArr.length);
            //拿着遍历的数据跟随机索引的数据进行交换
            int temp=tempArr[i];
            tempArr[i]=tempArr[index];
            tempArr[index]=temp;
        }
        for (int i = 0; i < tempArr.length; i++) {
            System.out.print(tempArr[i]+",");
        }
        System.out.println( );
        //创建二维数组
        int[][]data=new int[4][4];
        //解法一:遍历一维数组tempArr，将得到的数组依次添加到二维数组中
        for (int i = 0; i < tempArr.length; i++) {
            data[i/4][i%4]=tempArr[i];
        }
        //进行二维数组遍历得到一维数组
       /* for (int i = 0; i < data.length; i++) {
            //进行一维数组遍历，得到每一个元素
            for (int i1 = 0; i1 < data[i].length; i1++) {
                System.out.print(data[i][i1]+" ");
            }
            System.out.println();
        }*/
        //解法二:遍历二维数组，给里面每一个数组赋值
        //结果为将一维数组的前四个是二维数组的第一个，以此类推
        int index=0;
        for (int i = 0; i < data.length; i++) {
            //进行一维数组遍历，得到每一个元素
            for (int j = 0; j < data[i].length; j++) {
               data[i][j]=tempArr[index];
               index++;
                System.out.print(data[i][j]+" ");
            }
            System.out.println();
        }
    }
}
